﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Threading.Tasks;

namespace GYCTOAManagementSystemNewApi.Model
{
    /// <summary>
    /// 新版的报销管理实体
    /// </summary>
    public class FinanceReimbursement1 : PublicAudit
    {
       
        /// <summary>
        /// 财务报销类别，4代表常规报销，8代表差旅费报销
        /// </summary>
        public int FinanceType { get; set; }
        /// <summary>
        /// 单据编号
        /// </summary>
        public string ReimNumber { get; set; }
        /// <summary>
        /// 如果是冲账报销，记录关联的冲账借款单号
        /// </summary>
        public string LoanNumber { get; set; }
        /// <summary>
        /// 报销人
        /// </summary>
        public int Borrower { get; set; }
        /// <summary>
        /// 报销时间
        /// </summary>
        public DateTime BorrowTime { get; set; }
        /// <summary>
        /// 关联部门
        /// </summary>
        public int Department { get; set; }
        /// <summary>
        /// 关联项目
        /// </summary>
        public int Project { get; set; }
        /// <summary>
        /// 转账方式
        /// </summary>
        public int TransferMethod { get; set; }
        /// <summary>
        /// 转账银行
        /// </summary>
        public int FinanceBankId { get; set; }
        /// <summary>
        /// 手续费
        /// </summary>
        public decimal ServiceCharge { get; set; }
        /// <summary>
        /// 期初余额
        /// </summary>
        //public decimal OpeningBalance { get; set; }
        /// <summary>
        /// 期末余额
        /// </summary>
        //public decimal ClosingBalance { get; set; }
        /// <summary>
        /// 报销方式,报销冲账，垫付报销
        /// </summary>
        public int ReimMethod { get; set; }
        /// <summary>
        /// 是否是最后一次冲账，用于后面计算差额和出纳打钱
        /// </summary>
        public bool IsFinishReversal { get; set; }
        /// <summary>
        /// 金额
        /// </summary>
        public decimal Money { get; set; }
        /// <summary>
        /// 财务核准金额
        /// </summary>
        public decimal ApprovalMoney { get; set; }
        /// <summary>
        /// 记录差额的正负
        /// </summary>
        //public int PlusMinusDiff { get; set; }
        /// <summary>
        /// 差额，有正负之分
        /// </summary>
        public decimal Difference { get; set; }
        /// <summary>
        /// 收款人
        /// </summary>
        public int Payee { get; set; }
        /// <summary>
        /// 收款人类型，为1代表外部客户，为2代表内部员工
        /// </summary>
        public int PayeeType { get; set; }
        /// <summary>
        /// 出差类型，项目驻扎，非项目驻扎
        /// </summary>
        public int TravelType { get; set; }
        /// <summary>
        /// 出差人员
        /// </summary>
        public string TravelPeople { get; set; }
        /// <summary>
        /// 出差地点
        /// </summary>
        public string TravelAddress { get; set; }
        /// <summary>
        /// 出差开始时间
        /// </summary>
        /// 
 
        public DateTime? TravelStartTime { get; set; }
        /// <summary>
        /// 出差结束时间
        /// </summary>
        public DateTime? TravelEndTime { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string Remark { get; set; }
        /// <summary>
        /// 单据详细类别
        /// </summary>
        //public List<FinanceDocDetail> FinanceDocDetails;
        ///// <summary>
        ///// 审批状态
        ///// </summary>
        //public int State { get; set; }
        ///// <summary>
        ///// 单据是否被拒绝
        ///// </summary>
        //public bool IsRefuse { get; set; }
        ///// <summary>
        ///// 部长签批
        ///// </summary>
        //public int AuditUserId1 { get; set; }
        ///// <summary>
        ///// 部长签批时间
        ///// </summary>
        //public DateTime? AuditTime1 { get; set; }
        ///// <summary>
        ///// 签批评论
        ///// </summary>
        //public string AuditComment1 { get; set; }
        ///// <summary>
        ///// 会计签批
        ///// </summary>
        //public int AuditUserId2 { get; set; }
        ///// <summary>
        ///// 会计签批时间
        ///// </summary>
        //public DateTime? AuditTime2 { get; set; }
        ///// <summary>
        ///// 签批评论
        ///// </summary>
        //public string AuditComment2 { get; set; }
        ///// <summary>
        ///// 总经理、董事长签批
        ///// </summary>
        //public int AuditUserId3 { get; set; }
        ///// <summary>
        ///// 总经理、董事长签批时间
        ///// </summary>
        //public DateTime? AuditTime3 { get; set; }
        ///// <summary>
        ///// 签批评论
        ///// </summary>
        //public string AuditComment3 { get; set; }
        ///// <summary>
        ///// 出纳签批
        ///// </summary>
        //public int AuditUserId4 { get; set; }
        ///// <summary>
        ///// 出纳签批时间
        ///// </summary>
        //public DateTime? AuditTime4 { get; set; }
        ///// <summary>
        ///// 签批评论
        ///// </summary>
        //public string AuditComment4 { get; set; }
      
 
        /// <summary>
        /// 记录该单据审批通过后，此单据当时关联的银行卡或者现金余额数据
        /// </summary>
        public decimal Balance { get; set; }

        #region 2022-2-9   Sgs
        /// <summary>
        /// 实际打款时间
        /// </summary>
        public DateTime? ActualPaymentTime { get; set; }
        #endregion
    }

}
